package com.oazon.analytics;

import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Map;

import android.content.Context;

import com.umeng.analytics.MobclickAgent;

public class UmengCollector implements IAnalyticsCollector {
    @Override
    public void updateOnlineConfig(Context context) {
        MobclickAgent.updateOnlineConfig(context);
    }

    @Override
    public void onError(Context context) {
        //MobclickAgent.onError(context);  //the method removed from umeng sdk v5.2.4
    }

    @Override
    public void onResume(Context context) {
        MobclickAgent.onResume(context);
    }

    @Override
    public void onPause(Context context) {
        MobclickAgent.onPause(context);
    }

    @Override
    public void onEvent(Context context, String eventId) {
        MobclickAgent.onEvent(context, eventId);
    }

    @Override
    public void onEvent(Context context, String eventId, String label) {
        MobclickAgent.onEvent(context, eventId, label);
    }

    @Override
    public void onEvent(Context context, String eventId, HashMap<String, String> map) {
    	Map<String, String> params = new LinkedHashMap<String, String>();
    	for (Map.Entry<String, String> entry : map.entrySet()) {
			String key = entry.getKey();
			String value = entry.getValue();
			if (value != null)
				params.put(key, value);
		}
        MobclickAgent.onEvent(context, eventId, params);
    }

    @Override
    public void onException(Context context, Throwable exception) {
        // added from umeng sdk v5.2.4
        MobclickAgent.reportError(context, exception);
    }

    @Override
    public void trackInstalledApp(Context context, boolean includeSysApp) {
        // empty
    }
}
